﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Newtonsoft;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using Aspose.Cells;

namespace json解析
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            //textBox7.Text= "{ 'errno':0,'data':{'count':1,'datastreams':[{'datapoints':[{'at':'2019-04-15 09:49:20.863','value':28}],'id':33}]},'error':'succ'}";

        }
        string 热量单位,流量单位;
        //string 流量单位;

        private void button1_Click(object sender, EventArgs e)
        {
            //string json = "{ 'errno':0,'data':{'count':1,'datastreams':[{'datapoints':[{'at':'2019-04-15 09:49:20.863','value':28}],'id':33}]},'error':'succ'}";
            string json = "{'objser':'000A','num':'01','data':[{'SER':'1231','time':'04.23-19:15:32','MBusResp':'6820776655443322118130901F010000000011503637021100020000121821280035808762012C19750069570020010020131120002318000080007416'},{'SER':'1232','time':'06.21-19:15:32','MBusResp':'6820776655443322118130901F010000000011503637021100020000121821280035808762012C19750069570020010020131120002318000080007416'},{'SER':'1233','time':'07.21-19:15:32','MBusResp':'6820776655443322118130901F010000000011503637021100020000121821280035808762012C19750069570020010020131120002318000080007416'},{'SER':'1234','time':'04.21-19:15:32','MBusResp':'6820776655443322118130901F010000000011503637021100020000121821280035808762012C19750069570020010020131120002318000080007416'},{'SER':'1235','time':'04.21-19:15:32','MBusResp':'6820776655443322118130901F010000000011503637021100020000121821280035808762012C19750069570020010020131120002318000080007416'}]}";
            //string json = "{'errno':0,'data':{'count':1,'datastreams':[{'datapoints':[{'at':'2019-04-22 08:33:28.408','value':'8000080{\"objser\":\"000A\",\"num\":\"05\",\"data\':[{\'SER\':\'1234\',\'time\':\'04.21-19:15:32\',\'MBusResp\':\'6820776655443322118130901F010000000011503637021100020000121821280035808762012C19750069570020010020131120002318000080007416\'},{\'SER\':\'1234\',\'time\':\'04.21-19:15:32\',\'MBusResp\':\'6820776655443322118130901F010000000011503637021100020000121821280035808762012C1975006957002001002013112000231007416\'},{\'SER\':\'1234\',\'time\':\'04.21-19:15:32\',\'MBusResp\':\'6820776655443322118130901F010000000011503637021100020000121821280035808762012C19750069570020010020131120002318000080007416\'},{\'SER\':\'1234\',\'time\':\'04.21-19:15:32\',\'MBusResp\':\'6820776655443322118130901F010000000011503637021100020000121821280035808762012C19750069570020010020131120002318000080007416\'},{\'SER\':\'1234\',\'time\':\'04.21-19:15:32\',\'MBusResp\':\'6820776655443322118130901F010000000011503637021100020000121821280035808762012C19750069570020010020131120002318000080007416\'}]}'}],'id':'3300_0_5750'}]},'error':'succ'}";
            JsonReader reader = new JsonTextReader(new StringReader(json));
            JObject jo1 = (JObject)JsonConvert.DeserializeObject(json);

            JObject jsonObj = null;

            jsonObj = JObject.Parse(json);

            //textBox1.Text =jo1["errno"].ToString();//完成
            //textBox2.Text = (string)jsonObj["data"]["count"];//完成
            ////一层嵌套
            //JArray das = JArray.Parse(jsonObj["data"]["datastreams"].ToString());
            //JObject j = JObject.Parse(das[0].ToString());
            //string dpo = j["datapoints"].ToString();
            //JArray dap = (JArray)JsonConvert.DeserializeObject(dpo);
            //textBox3.Text = dap[0]["at"].ToString();//完成
            //textBox4.Text = dap[0]["value"].ToString();//完成
            //textBox5.Text = j["id"].ToString();//完成
            //textBox6.Text = jo1["error"].ToString();//完成

            textBox61.Text = jo1["objser"].ToString();//完成
            textBox62.Text = jo1["num"].ToString();//完成
            int num = int.Parse(jo1["num"].ToString());//将num的字符串转成int
              //textBox3.Text = num.ToString();
              //for (int i = 0; i < num; i++)
              //{
              //一层嵌套
            switch (num)
            {
                #region 五个数组
                case 5:
                    JArray dat = JArray.Parse(jsonObj["data"].ToString());
                    JObject da0 = JObject.Parse(dat[0].ToString());//dat[0]第一组数
                    textBox1.Text = da0["SER"].ToString();//完成
                    textBox2.Text = da0["time"].ToString();//完成
                                                           //textBox5.Text = da["MBusResp"].ToString();//完成
                    string mbus0 = da0["MBusResp"].ToString();//完成
                                                              //textBox5.Text = mbus;
                    string 地址 = mbus0.Substring(4, 14);
                    textBox3.Text = 地址;
                    string 日热量 = mbus0.Substring(28, 8);
                    //textBox2.Text = 日热量.Insert(6,"."); //无单位         
                    string 日热量单位 = mbus0.Substring(36, 2);
                    switch (日热量单位)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox4.Text = 日热量.Insert(6, ".") + 热量单位;//完成

                    string 累计热量 = mbus0.Substring(38, 8);
                    string 累计热量单位 = mbus0.Substring(46, 2);
                    switch (累计热量单位)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox5.Text = 累计热量.Insert(6, ".") + 热量单位;
                    string 瞬时热量 = mbus0.Substring(48, 8);
                    string 瞬时热量单位 = mbus0.Substring(56, 2);
                    switch (瞬时热量单位)
                    {
                        case "12":
                            热量单位 = "GJ/h";
                            break;
                        case "14":
                            热量单位 = "W";
                            break;
                        case "17":
                            热量单位 = "kW";
                            break;
                        case "1A":
                            热量单位 = "MW";
                            break;
                    }
                    textBox6.Text = 瞬时热量.Insert(6, ".") + 热量单位;
                    string 瞬时流量 = mbus0.Substring(58, 8);
                    string 瞬时流量单位 = mbus0.Substring(66, 2);
                    switch (瞬时流量单位)
                    {
                        case "32":
                            流量单位 = "L/h";
                            break;
                        case "35":
                            流量单位 = "m³/h";
                            break;
                    }
                    textBox7.Text = 瞬时流量.Insert(4, ".") + 流量单位;
                    string 累计流量 = mbus0.Substring(68, 8);
                    string 累计流量单位 = mbus0.Substring(76, 2);
                    switch (累计流量单位)
                    {
                        case "29":
                            流量单位 = "L";
                            break;
                        case "2C":
                            流量单位 = "m³";
                            break;
                    }
                    textBox8.Text = 累计流量.Insert(6, ".") + 流量单位;

                    string 供水温度 = mbus0.Substring(78, 6);
                    textBox9.Text = 供水温度.Insert(4, ".") + "℃";
                    string 回水温度 = mbus0.Substring(84, 6);
                    textBox10.Text = 回水温度.Insert(4, ".") + "℃";
                    string 累计时间 = mbus0.Substring(90, 6);
                    textBox11.Text = 累计时间 + "h";
                    string 实时 = mbus0.Substring(96, 14);
                    string a = 实时.Insert(4, "年");
                    string b = a.Insert(7, "月");
                    string c = b.Insert(10, "日");
                    string d = c.Insert(13, "时");
                    string 时间 = d.Insert(16, "分");
                    string 实时时间 = 时间.Insert(19, "秒");
                    textBox12.Text = 实时时间;
                    //第二组数据
                    JObject da1 = JObject.Parse(dat[1].ToString());//dat[0]第一组数
                    textBox24.Text = da1["SER"].ToString();//完成
                    textBox23.Text = da1["time"].ToString();//完成
                    string mbus1 = da1["MBusResp"].ToString();//完成
                    string 地址1 = mbus1.Substring(4, 14);
                    textBox22.Text = 地址1;
                    string 日热量1 = mbus1.Substring(28, 8);
                    //textBox2.Text = 日热量.Insert(6,"."); //无单位         
                    string 日热量单位1 = mbus1.Substring(36, 2);
                    switch (日热量单位1)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox21.Text = 日热量1.Insert(6, ".") + 热量单位;//完成

                    string 累计热量1 = mbus1.Substring(38, 8);
                    string 累计热量单位1 = mbus1.Substring(46, 2);
                    switch (累计热量单位1)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox20.Text = 累计热量1.Insert(6, ".") + 热量单位;
                    string 瞬时热量1 = mbus1.Substring(48, 8);
                    string 瞬时热量单位1 = mbus1.Substring(56, 2);
                    switch (瞬时热量单位1)
                    {
                        case "12":
                            热量单位 = "GJ/h";
                            break;
                        case "14":
                            热量单位 = "W";
                            break;
                        case "17":
                            热量单位 = "kW";
                            break;
                        case "1A":
                            热量单位 = "MW";
                            break;
                    }
                    textBox19.Text = 瞬时热量1.Insert(6, ".") + 热量单位;
                    string 瞬时流量1 = mbus1.Substring(58, 8);
                    string 瞬时流量单位1 = mbus1.Substring(66, 2);
                    switch (瞬时流量单位1)
                    {
                        case "32":
                            流量单位 = "L/h";
                            break;
                        case "35":
                            流量单位 = "m³/h";
                            break;
                    }
                    textBox18.Text = 瞬时流量1.Insert(4, ".") + 流量单位;
                    string 累计流量1 = mbus1.Substring(68, 8);
                    string 累计流量单位1 = mbus1.Substring(76, 2);
                    switch (累计流量单位1)
                    {
                        case "29":
                            流量单位 = "L";
                            break;
                        case "2C":
                            流量单位 = "m³";
                            break;
                    }
                    textBox17.Text = 累计流量1.Insert(6, ".") + 流量单位;

                    string 供水温度1 = mbus1.Substring(78, 6);
                    textBox16.Text = 供水温度1.Insert(4, ".") + "℃";
                    string 回水温度1 = mbus1.Substring(84, 6);
                    textBox15.Text = 回水温度1.Insert(4, ".") + "℃";
                    string 累计时间1 = mbus1.Substring(90, 6);
                    textBox14.Text = 累计时间1 + "h";
                    string 实时1 = mbus1.Substring(96, 14);
                    string a1 = 实时1.Insert(4, "年");
                    string b1 = a1.Insert(7, "月");
                    string c1 = b1.Insert(10, "日");
                    string d1 = c1.Insert(13, "时");
                    string 时间1 = d1.Insert(16, "分");
                    string 实时时间1 = 时间1.Insert(19, "秒");
                    textBox13.Text = 实时时间1;
                    //第三组数据
                    JObject da2 = JObject.Parse(dat[2].ToString());//dat[0]第一组数
                    textBox36.Text = da2["SER"].ToString();//完成
                    textBox35.Text = da2["time"].ToString();//完成
                    string mbus2 = da2["MBusResp"].ToString();//完成
                    string 地址2 = mbus2.Substring(4, 14);
                    textBox34.Text = 地址2;
                    string 日热量2 = mbus2.Substring(28, 8);
                    //textBox2.Text = 日热量.Insert(6,"."); //无单位         
                    string 日热量单位2 = mbus2.Substring(36, 2);
                    switch (日热量单位2)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox33.Text = 日热量2.Insert(6, ".") + 热量单位;//完成

                    string 累计热量2 = mbus2.Substring(38, 8);
                    string 累计热量单位2 = mbus2.Substring(46, 2);
                    switch (累计热量单位2)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox32.Text = 累计热量2.Insert(6, ".") + 热量单位;
                    string 瞬时热量2 = mbus2.Substring(48, 8);
                    string 瞬时热量单位2 = mbus2.Substring(56, 2);
                    switch (瞬时热量单位2)
                    {
                        case "12":
                            热量单位 = "GJ/h";
                            break;
                        case "14":
                            热量单位 = "W";
                            break;
                        case "17":
                            热量单位 = "kW";
                            break;
                        case "1A":
                            热量单位 = "MW";
                            break;
                    }
                    textBox31.Text = 瞬时热量2.Insert(6, ".") + 热量单位;
                    string 瞬时流量2 = mbus2.Substring(58, 8);
                    string 瞬时流量单位2 = mbus2.Substring(66, 2);
                    switch (瞬时流量单位2)
                    {
                        case "32":
                            流量单位 = "L/h";
                            break;
                        case "35":
                            流量单位 = "m³/h";
                            break;
                    }
                    textBox30.Text = 瞬时流量2.Insert(4, ".") + 流量单位;
                    string 累计流量2 = mbus2.Substring(68, 8);
                    string 累计流量单位2 = mbus2.Substring(76, 2);
                    switch (累计流量单位2)
                    {
                        case "29":
                            流量单位 = "L";
                            break;
                        case "2C":
                            流量单位 = "m³";
                            break;
                    }
                    textBox29.Text = 累计流量2.Insert(6, ".") + 流量单位;

                    string 供水温度2 = mbus2.Substring(78, 6);
                    textBox28.Text = 供水温度2.Insert(4, ".") + "℃";
                    string 回水温度2 = mbus2.Substring(84, 6);
                    textBox27.Text = 回水温度2.Insert(4, ".") + "℃";
                    string 累计时间2 = mbus2.Substring(90, 6);
                    textBox26.Text = 累计时间2 + "h";
                    string 实时2 = mbus2.Substring(96, 14);
                    string a2 = 实时2.Insert(4, "年");
                    string b2 = a2.Insert(7, "月");
                    string c2 = b2.Insert(10, "日");
                    string d2 = c2.Insert(13, "时");
                    string 时间2 = d2.Insert(16, "分");
                    string 实时时间2 = 时间2.Insert(19, "秒");
                    textBox25.Text = 实时时间2;
                    //第四组数据
                    JObject da3 = JObject.Parse(dat[3].ToString());//dat[0]第一组数
                    textBox48.Text = da3["SER"].ToString();//完成
                    textBox47.Text = da3["time"].ToString();//完成
                    string mbus3 = da3["MBusResp"].ToString();//完成
                    string 地址3 = mbus3.Substring(4, 14);
                    textBox46.Text = 地址3;
                    string 日热量3 = mbus3.Substring(28, 8);
                    //textBox2.Text = 日热量.Insert(6,"."); //无单位         
                    string 日热量单位3 = mbus3.Substring(36, 2);
                    switch (日热量单位3)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox45.Text = 日热量3.Insert(6, ".") + 热量单位;//完成

                    string 累计热量3 = mbus3.Substring(38, 8);
                    string 累计热量单位3 = mbus3.Substring(46, 2);
                    switch (累计热量单位3)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox44.Text = 累计热量3.Insert(6, ".") + 热量单位;
                    string 瞬时热量3 = mbus3.Substring(48, 8);
                    string 瞬时热量单位3 = mbus3.Substring(56, 2);
                    switch (瞬时热量单位3)
                    {
                        case "12":
                            热量单位 = "GJ/h";
                            break;
                        case "14":
                            热量单位 = "W";
                            break;
                        case "17":
                            热量单位 = "kW";
                            break;
                        case "1A":
                            热量单位 = "MW";
                            break;
                    }
                    textBox43.Text = 瞬时热量3.Insert(6, ".") + 热量单位;
                    string 瞬时流量3 = mbus3.Substring(58, 8);
                    string 瞬时流量单位3 = mbus3.Substring(66, 2);
                    switch (瞬时流量单位3)
                    {
                        case "32":
                            流量单位 = "L/h";
                            break;
                        case "35":
                            流量单位 = "m³/h";
                            break;
                    }
                    textBox42.Text = 瞬时流量3.Insert(4, ".") + 流量单位;
                    string 累计流量3 = mbus3.Substring(68, 8);
                    string 累计流量单位3 = mbus3.Substring(76, 2);
                    switch (累计流量单位3)
                    {
                        case "29":
                            流量单位 = "L";
                            break;
                        case "2C":
                            流量单位 = "m³";
                            break;
                    }
                    textBox41.Text = 累计流量3.Insert(6, ".") + 流量单位;

                    string 供水温度3 = mbus3.Substring(78, 6);
                    textBox40.Text = 供水温度2.Insert(4, ".") + "℃";
                    string 回水温度3 = mbus3.Substring(84, 6);
                    textBox39.Text = 回水温度2.Insert(4, ".") + "℃";
                    string 累计时间3 = mbus3.Substring(90, 6);
                    textBox38.Text = 累计时间2 + "h";
                    string 实时3 = mbus3.Substring(96, 14);
                    string a3 = 实时3.Insert(4, "年");
                    string b3 = a3.Insert(7, "月");
                    string c3 = b3.Insert(10, "日");
                    string d3 = c3.Insert(13, "时");
                    string 时间3 = d3.Insert(16, "分");
                    string 实时时间3 = 时间3.Insert(19, "秒");
                    textBox37.Text = 实时时间3;
                    //第五组数据
                    JObject da4 = JObject.Parse(dat[4].ToString());//dat[0]第一组数
                    textBox60.Text = da4["SER"].ToString();//完成
                    textBox59.Text = da4["time"].ToString();//完成
                    string mbus4 = da4["MBusResp"].ToString();//完成
                    string 地址4 = mbus4.Substring(4, 14);
                    textBox58.Text = 地址4;
                    string 日热量4 = mbus4.Substring(28, 8);
                    //textBox2.Text = 日热量.Insert(6,"."); //无单位         
                    string 日热量单位4 = mbus4.Substring(36, 2);
                    switch (日热量单位4)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox57.Text = 日热量4.Insert(6, ".") + 热量单位;//完成

                    string 累计热量4 = mbus4.Substring(38, 8);
                    string 累计热量单位4 = mbus4.Substring(46, 2);
                    switch (累计热量单位4)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox56.Text = 累计热量4.Insert(6, ".") + 热量单位;
                    string 瞬时热量4 = mbus4.Substring(48, 8);
                    string 瞬时热量单位4 = mbus4.Substring(56, 2);
                    switch (瞬时热量单位4)
                    {
                        case "12":
                            热量单位 = "GJ/h";
                            break;
                        case "14":
                            热量单位 = "W";
                            break;
                        case "17":
                            热量单位 = "kW";
                            break;
                        case "1A":
                            热量单位 = "MW";
                            break;
                    }
                    textBox55.Text = 瞬时热量4.Insert(6, ".") + 热量单位;
                    string 瞬时流量4 = mbus4.Substring(58, 8);
                    string 瞬时流量单位4 = mbus4.Substring(66, 2);
                    switch (瞬时流量单位4)
                    {
                        case "32":
                            流量单位 = "L/h";
                            break;
                        case "35":
                            流量单位 = "m³/h";
                            break;
                    }
                    textBox54.Text = 瞬时流量4.Insert(4, ".") + 流量单位;
                    string 累计流量4 = mbus4.Substring(68, 8);
                    string 累计流量单位4 = mbus4.Substring(76, 2);
                    switch (累计流量单位4)
                    {
                        case "29":
                            流量单位 = "L";
                            break;
                        case "2C":
                            流量单位 = "m³";
                            break;
                    }
                    textBox53.Text = 累计流量4.Insert(6, ".") + 流量单位;

                    string 供水温度4 = mbus4.Substring(78, 6);
                    textBox52.Text = 供水温度2.Insert(4, ".") + "℃";
                    string 回水温度4 = mbus4.Substring(84, 6);
                    textBox51.Text = 回水温度2.Insert(4, ".") + "℃";
                    string 累计时间4 = mbus4.Substring(90, 6);
                    textBox50.Text = 累计时间2 + "h";
                    string 实时4 = mbus4.Substring(96, 14);
                    string a4 = 实时4.Insert(4, "年");
                    string b4 = a4.Insert(7, "月");
                    string c4 = b4.Insert(10, "日");
                    string d4 = c4.Insert(13, "时");
                    string 时间4 = d4.Insert(16, "分");
                    string 实时时间4 = 时间4.Insert(19, "秒");
                    textBox49.Text = 实时时间3;
                    //}
                    break;
#endregion
                #region 四个数组
                case 4:
                    JArray dat01 = JArray.Parse(jsonObj["data"].ToString());
                    JObject da01 = JObject.Parse(dat01[0].ToString());//dat[0]第一组数
                    textBox1.Text = da01["SER"].ToString();//完成
                    textBox2.Text = da01["time"].ToString();//完成
                                                           //textBox5.Text = da["MBusResp"].ToString();//完成
                    string mbus01 = da01["MBusResp"].ToString();//完成
                                                              //textBox5.Text = mbus;
                    string 地址01 = mbus01.Substring(4, 14);
                    textBox3.Text = 地址01;
                    string 日热量01 = mbus01.Substring(28, 8);
                    //textBox2.Text = 日热量.Insert(6,"."); //无单位         
                    string 日热量单位01 = mbus01.Substring(36, 2);
                    switch (日热量单位01)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox4.Text = 日热量01.Insert(6, ".") + 热量单位;//完成

                    string 累计热量01 = mbus01.Substring(38, 8);
                    string 累计热量单位01 = mbus01.Substring(46, 2);
                    switch (累计热量单位01)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox5.Text = 累计热量01.Insert(6, ".") + 热量单位;
                    string 瞬时热量01 = mbus01.Substring(48, 8);
                    string 瞬时热量单位01 = mbus01.Substring(56, 2);
                    switch (瞬时热量单位01)
                    {
                        case "12":
                            热量单位 = "GJ/h";
                            break;
                        case "14":
                            热量单位 = "W";
                            break;
                        case "17":
                            热量单位 = "kW";
                            break;
                        case "1A":
                            热量单位 = "MW";
                            break;
                    }
                    textBox6.Text = 瞬时热量01.Insert(6, ".") + 热量单位;
                    string 瞬时流量01 = mbus01.Substring(58, 8);
                    string 瞬时流量单位01 = mbus01.Substring(66, 2);
                    switch (瞬时流量单位01)
                    {
                        case "32":
                            流量单位 = "L/h";
                            break;
                        case "35":
                            流量单位 = "m³/h";
                            break;
                    }
                    textBox7.Text = 瞬时流量01.Insert(4, ".") + 流量单位;
                    string 累计流量01 = mbus01.Substring(68, 8);
                    string 累计流量单位01 = mbus01.Substring(76, 2);
                    switch (累计流量单位01)
                    {
                        case "29":
                            流量单位 = "L";
                            break;
                        case "2C":
                            流量单位 = "m³";
                            break;
                    }
                    textBox8.Text = 累计流量01.Insert(6, ".") + 流量单位;

                    string 供水温度01 = mbus01.Substring(78, 6);
                    textBox9.Text = 供水温度01.Insert(4, ".") + "℃";
                    string 回水温度01 = mbus01.Substring(84, 6);
                    textBox10.Text = 回水温度01.Insert(4, ".") + "℃";
                    string 累计时间01 = mbus01.Substring(90, 6);
                    textBox11.Text = 累计时间01 + "h";
                    string 实时01 = mbus01.Substring(96, 14);
                    string a01 = 实时01.Insert(4, "年");
                    string b01 = a01.Insert(7, "月");
                    string c01 = b01.Insert(10, "日");
                    string d01 = c01.Insert(13, "时");
                    string 时间01 = d01.Insert(16, "分");
                    string 实时时间01 = 时间01.Insert(19, "秒");
                    textBox12.Text = 实时时间01;
                    //第二组数据
                    JObject da11 = JObject.Parse(dat01[1].ToString());//dat[0]第一组数
                    textBox24.Text = da11["SER"].ToString();//完成
                    textBox23.Text = da11["time"].ToString();//完成
                    string mbus11 = da11["MBusResp"].ToString();//完成
                    string 地址11 = mbus11.Substring(4, 14);
                    textBox22.Text = 地址11;
                    string 日热量11 = mbus11.Substring(28, 8);
                    //textBox2.Text = 日热量.Insert(6,"."); //无单位         
                    string 日热量单位11 = mbus11.Substring(36, 2);
                    switch (日热量单位11)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox21.Text = 日热量11.Insert(6, ".") + 热量单位;//完成

                    string 累计热量11 = mbus11.Substring(38, 8);
                    string 累计热量单位11 = mbus11.Substring(46, 2);
                    switch (累计热量单位11)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox20.Text = 累计热量11.Insert(6, ".") + 热量单位;
                    string 瞬时热量11 = mbus11.Substring(48, 8);
                    string 瞬时热量单位11 = mbus11.Substring(56, 2);
                    switch (瞬时热量单位11)
                    {
                        case "12":
                            热量单位 = "GJ/h";
                            break;
                        case "14":
                            热量单位 = "W";
                            break;
                        case "17":
                            热量单位 = "kW";
                            break;
                        case "1A":
                            热量单位 = "MW";
                            break;
                    }
                    textBox19.Text = 瞬时热量11.Insert(6, ".") + 热量单位;
                    string 瞬时流量11 = mbus11.Substring(58, 8);
                    string 瞬时流量单位11 = mbus11.Substring(66, 2);
                    switch (瞬时流量单位11)
                    {
                        case "32":
                            流量单位 = "L/h";
                            break;
                        case "35":
                            流量单位 = "m³/h";
                            break;
                    }
                    textBox18.Text = 瞬时流量11.Insert(4, ".") + 流量单位;
                    string 累计流量11 = mbus11.Substring(68, 8);
                    string 累计流量单位11 = mbus11.Substring(76, 2);
                    switch (累计流量单位11)
                    {
                        case "29":
                            流量单位 = "L";
                            break;
                        case "2C":
                            流量单位 = "m³";
                            break;
                    }
                    textBox17.Text = 累计流量11.Insert(6, ".") + 流量单位;

                    string 供水温度11 = mbus11.Substring(78, 6);
                    textBox16.Text = 供水温度11.Insert(4, ".") + "℃";
                    string 回水温度11 = mbus11.Substring(84, 6);
                    textBox15.Text = 回水温度11.Insert(4, ".") + "℃";
                    string 累计时间11 = mbus11.Substring(90, 6);
                    textBox14.Text = 累计时间11 + "h";
                    string 实时11 = mbus11.Substring(96, 14);
                    string a11 = 实时11.Insert(4, "年");
                    string b11 = a11.Insert(7, "月");
                    string c11 = b11.Insert(10, "日");
                    string d11 = c11.Insert(13, "时");
                    string 时间11 = d11.Insert(16, "分");
                    string 实时时间11 = 时间11.Insert(19, "秒");
                    textBox13.Text = 实时时间11;
                    //第三组数据
                    JObject da21 = JObject.Parse(dat01[2].ToString());//dat[0]第一组数
                    textBox36.Text = da21["SER"].ToString();//完成
                    textBox35.Text = da21["time"].ToString();//完成
                    string mbus21 = da21["MBusResp"].ToString();//完成
                    string 地址21 = mbus21.Substring(4, 14);
                    textBox34.Text = 地址21;
                    string 日热量21 = mbus21.Substring(28, 8);
                    //textBox2.Text = 日热量.Insert(6,"."); //无单位         
                    string 日热量单位21 = mbus21.Substring(36, 2);
                    switch (日热量单位21)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox33.Text = 日热量21.Insert(6, ".") + 热量单位;//完成

                    string 累计热量21 = mbus21.Substring(38, 8);
                    string 累计热量单位21 = mbus21.Substring(46, 2);
                    switch (累计热量单位21)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox32.Text = 累计热量21.Insert(6, ".") + 热量单位;
                    string 瞬时热量21 = mbus21.Substring(48, 8);
                    string 瞬时热量单位21 = mbus21.Substring(56, 2);
                    switch (瞬时热量单位21)
                    {
                        case "12":
                            热量单位 = "GJ/h";
                            break;
                        case "14":
                            热量单位 = "W";
                            break;
                        case "17":
                            热量单位 = "kW";
                            break;
                        case "1A":
                            热量单位 = "MW";
                            break;
                    }
                    textBox31.Text = 瞬时热量21.Insert(6, ".") + 热量单位;
                    string 瞬时流量21 = mbus21.Substring(58, 8);
                    string 瞬时流量单位21 = mbus21.Substring(66, 2);
                    switch (瞬时流量单位21)
                    {
                        case "32":
                            流量单位 = "L/h";
                            break;
                        case "35":
                            流量单位 = "m³/h";
                            break;
                    }
                    textBox30.Text = 瞬时流量21.Insert(4, ".") + 流量单位;
                    string 累计流量21 = mbus21.Substring(68, 8);
                    string 累计流量单位21 = mbus21.Substring(76, 2);
                    switch (累计流量单位21)
                    {
                        case "29":
                            流量单位 = "L";
                            break;
                        case "2C":
                            流量单位 = "m³";
                            break;
                    }
                    textBox29.Text = 累计流量21.Insert(6, ".") + 流量单位;

                    string 供水温度21 = mbus21.Substring(78, 6);
                    textBox28.Text = 供水温度21.Insert(4, ".") + "℃";
                    string 回水温度21 = mbus21.Substring(84, 6);
                    textBox27.Text = 回水温度21.Insert(4, ".") + "℃";
                    string 累计时间21 = mbus21.Substring(90, 6);
                    textBox26.Text = 累计时间21 + "h";
                    string 实时21 = mbus21.Substring(96, 14);
                    string a21 = 实时21.Insert(4, "年");
                    string b21 = a21.Insert(7, "月");
                    string c21 = b21.Insert(10, "日");
                    string d21 = c21.Insert(13, "时");
                    string 时间21 = d21.Insert(16, "分");
                    string 实时时间21 = 时间21.Insert(19, "秒");
                    textBox25.Text = 实时时间21;
                    //第四组数据
                    JObject da31 = JObject.Parse(dat01[3].ToString());//dat[0]第一组数
                    textBox48.Text = da31["SER"].ToString();//完成
                    textBox47.Text = da31["time"].ToString();//完成
                    string mbus31 = da31["MBusResp"].ToString();//完成
                    string 地址31 = mbus31.Substring(4, 14);
                    textBox46.Text = 地址31;
                    string 日热量31 = mbus31.Substring(28, 8);
                    //textBox2.Text = 日热量.Insert(6,"."); //无单位         
                    string 日热量单位31 = mbus31.Substring(36, 2);
                    switch (日热量单位31)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox45.Text = 日热量31.Insert(6, ".") + 热量单位;//完成

                    string 累计热量31 = mbus31.Substring(38, 8);
                    string 累计热量单位31 = mbus31.Substring(46, 2);
                    switch (累计热量单位31)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox44.Text = 累计热量31.Insert(6, ".") + 热量单位;
                    string 瞬时热量31 = mbus31.Substring(48, 8);
                    string 瞬时热量单位31 = mbus31.Substring(56, 2);
                    switch (瞬时热量单位31)
                    {
                        case "12":
                            热量单位 = "GJ/h";
                            break;
                        case "14":
                            热量单位 = "W";
                            break;
                        case "17":
                            热量单位 = "kW";
                            break;
                        case "1A":
                            热量单位 = "MW";
                            break;
                    }
                    textBox43.Text = 瞬时热量31.Insert(6, ".") + 热量单位;
                    string 瞬时流量31 = mbus31.Substring(58, 8);
                    string 瞬时流量单位31 = mbus31.Substring(66, 2);
                    switch (瞬时流量单位31)
                    {
                        case "32":
                            流量单位 = "L/h";
                            break;
                        case "35":
                            流量单位 = "m³/h";
                            break;
                    }
                    textBox42.Text = 瞬时流量31.Insert(4, ".") + 流量单位;
                    string 累计流量31 = mbus31.Substring(68, 8);
                    string 累计流量单位31 = mbus31.Substring(76, 2);
                    switch (累计流量单位31)
                    {
                        case "29":
                            流量单位 = "L";
                            break;
                        case "2C":
                            流量单位 = "m³";
                            break;
                    }
                    textBox41.Text = 累计流量31.Insert(6, ".") + 流量单位;

                    string 供水温度31 = mbus31.Substring(78, 6);
                    textBox40.Text = 供水温度21.Insert(4, ".") + "℃";
                    string 回水温度31 = mbus31.Substring(84, 6);
                    textBox39.Text = 回水温度21.Insert(4, ".") + "℃";
                    string 累计时间31 = mbus31.Substring(90, 6);
                    textBox38.Text = 累计时间21 + "h";
                    string 实时31 = mbus31.Substring(96, 14);
                    string a31 = 实时31.Insert(4, "年");
                    string b31 = a31.Insert(7, "月");
                    string c31 = b31.Insert(10, "日");
                    string d31 = c31.Insert(13, "时");
                    string 时间31 = d31.Insert(16, "分");
                    string 实时时间31 = 时间31.Insert(19, "秒");
                    textBox37.Text = 实时时间31;
                    break;
#endregion
                #region 三个数组
                case 3:
                    JArray dat02 = JArray.Parse(jsonObj["data"].ToString());
                    JObject da02 = JObject.Parse(dat02[0].ToString());//dat[0]第一组数
                    textBox1.Text = da02["SER"].ToString();//完成
                    textBox2.Text = da02["time"].ToString();//完成
                                                           //textBox5.Text = da["MBusResp"].ToString();//完成
                    string mbus02 = da02["MBusResp"].ToString();//完成
                                                              //textBox5.Text = mbus;
                    string 地址02 = mbus02.Substring(4, 14);
                    textBox3.Text = 地址02;
                    string 日热量02 = mbus02.Substring(28, 8);
                    //textBox2.Text = 日热量.Insert(6,"."); //无单位         
                    string 日热量单位02 = mbus02.Substring(36, 2);
                    switch (日热量单位02)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox4.Text = 日热量02.Insert(6, ".") + 热量单位;//完成

                    string 累计热量02 = mbus02.Substring(38, 8);
                    string 累计热量单位02 = mbus02.Substring(46, 2);
                    switch (累计热量单位02)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox5.Text = 累计热量02.Insert(6, ".") + 热量单位;
                    string 瞬时热量02 = mbus02.Substring(48, 8);
                    string 瞬时热量单位02 = mbus02.Substring(56, 2);
                    switch (瞬时热量单位02)
                    {
                        case "12":
                            热量单位 = "GJ/h";
                            break;
                        case "14":
                            热量单位 = "W";
                            break;
                        case "17":
                            热量单位 = "kW";
                            break;
                        case "1A":
                            热量单位 = "MW";
                            break;
                    }
                    textBox6.Text = 瞬时热量02.Insert(6, ".") + 热量单位;
                    string 瞬时流量02 = mbus02.Substring(58, 8);
                    string 瞬时流量单位02 = mbus02.Substring(66, 2);
                    switch (瞬时流量单位02)
                    {
                        case "32":
                            流量单位 = "L/h";
                            break;
                        case "35":
                            流量单位 = "m³/h";
                            break;
                    }
                    textBox7.Text = 瞬时流量02.Insert(4, ".") + 流量单位;
                    string 累计流量02 = mbus02.Substring(68, 8);
                    string 累计流量单位02 = mbus02.Substring(76, 2);
                    switch (累计流量单位02)
                    {
                        case "29":
                            流量单位 = "L";
                            break;
                        case "2C":
                            流量单位 = "m³";
                            break;
                    }
                    textBox8.Text = 累计流量02.Insert(6, ".") + 流量单位;

                    string 供水温度02 = mbus02.Substring(78, 6);
                    textBox9.Text = 供水温度02.Insert(4, ".") + "℃";
                    string 回水温度02 = mbus02.Substring(84, 6);
                    textBox10.Text = 回水温度02.Insert(4, ".") + "℃";
                    string 累计时间02 = mbus02.Substring(90, 6);
                    textBox11.Text = 累计时间02 + "h";
                    string 实时02 = mbus02.Substring(96, 14);
                    string a02 = 实时02.Insert(4, "年");
                    string b02 = a02.Insert(7, "月");
                    string c02 = b02.Insert(10, "日");
                    string d02 = c02.Insert(13, "时");
                    string 时间02 = d02.Insert(16, "分");
                    string 实时时间02 = 时间02.Insert(19, "秒");
                    textBox12.Text = 实时时间02;
                    //第二组数据
                    JObject da12 = JObject.Parse(dat02[1].ToString());//dat[0]第一组数
                    textBox24.Text = da12["SER"].ToString();//完成
                    textBox23.Text = da12["time"].ToString();//完成
                    string mbus12 = da12["MBusResp"].ToString();//完成
                    string 地址12 = mbus12.Substring(4, 14);
                    textBox22.Text = 地址12;
                    string 日热量12 = mbus12.Substring(28, 8);
                    //textBox2.Text = 日热量.Insert(6,"."); //无单位         
                    string 日热量单位12 = mbus12.Substring(36, 2);
                    switch (日热量单位12)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox21.Text = 日热量12.Insert(6, ".") + 热量单位;//完成

                    string 累计热量12 = mbus12.Substring(38, 8);
                    string 累计热量单位12 = mbus12.Substring(46, 2);
                    switch (累计热量单位12)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox20.Text = 累计热量12.Insert(6, ".") + 热量单位;
                    string 瞬时热量12 = mbus12.Substring(48, 8);
                    string 瞬时热量单位12 = mbus12.Substring(56, 2);
                    switch (瞬时热量单位12)
                    {
                        case "12":
                            热量单位 = "GJ/h";
                            break;
                        case "14":
                            热量单位 = "W";
                            break;
                        case "17":
                            热量单位 = "kW";
                            break;
                        case "1A":
                            热量单位 = "MW";
                            break;
                    }
                    textBox19.Text = 瞬时热量12.Insert(6, ".") + 热量单位;
                    string 瞬时流量12 = mbus12.Substring(58, 8);
                    string 瞬时流量单位12 = mbus12.Substring(66, 2);
                    switch (瞬时流量单位12)
                    {
                        case "32":
                            流量单位 = "L/h";
                            break;
                        case "35":
                            流量单位 = "m³/h";
                            break;
                    }
                    textBox18.Text = 瞬时流量12.Insert(4, ".") + 流量单位;
                    string 累计流量12 = mbus12.Substring(68, 8);
                    string 累计流量单位12 = mbus12.Substring(76, 2);
                    switch (累计流量单位12)
                    {
                        case "29":
                            流量单位 = "L";
                            break;
                        case "2C":
                            流量单位 = "m³";
                            break;
                    }
                    textBox17.Text = 累计流量12.Insert(6, ".") + 流量单位;

                    string 供水温度12 = mbus12.Substring(78, 6);
                    textBox16.Text = 供水温度12.Insert(4, ".") + "℃";
                    string 回水温度12 = mbus12.Substring(84, 6);
                    textBox15.Text = 回水温度12.Insert(4, ".") + "℃";
                    string 累计时间12 = mbus12.Substring(90, 6);
                    textBox14.Text = 累计时间12 + "h";
                    string 实时12 = mbus12.Substring(96, 14);
                    string a12 = 实时12.Insert(4, "年");
                    string b12 = a12.Insert(7, "月");
                    string c12 = b12.Insert(10, "日");
                    string d12 = c12.Insert(13, "时");
                    string 时间12 = d12.Insert(16, "分");
                    string 实时时间12 = 时间12.Insert(19, "秒");
                    textBox13.Text = 实时时间12;
                    //第三组数据
                    JObject da22 = JObject.Parse(dat02[2].ToString());//dat[0]第一组数
                    textBox36.Text = da22["SER"].ToString();//完成
                    textBox35.Text = da22["time"].ToString();//完成
                    string mbus22 = da22["MBusResp"].ToString();//完成
                    string 地址22= mbus22.Substring(4, 14);
                    textBox34.Text = 地址22;
                    string 日热量22 = mbus22.Substring(28, 8);
                    //textBox2.Text = 日热量.Insert(6,"."); //无单位         
                    string 日热量单位22 = mbus22.Substring(36, 2);
                    switch (日热量单位22)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox33.Text = 日热量22.Insert(6, ".") + 热量单位;//完成

                    string 累计热量22 = mbus22.Substring(38, 8);
                    string 累计热量单位22 = mbus22.Substring(46, 2);
                    switch (累计热量单位22)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox32.Text = 累计热量22.Insert(6, ".") + 热量单位;
                    string 瞬时热量22 = mbus22.Substring(48, 8);
                    string 瞬时热量单位22 = mbus22.Substring(56, 2);
                    switch (瞬时热量单位22)
                    {
                        case "12":
                            热量单位 = "GJ/h";
                            break;
                        case "14":
                            热量单位 = "W";
                            break;
                        case "17":
                            热量单位 = "kW";
                            break;
                        case "1A":
                            热量单位 = "MW";
                            break;
                    }
                    textBox31.Text = 瞬时热量22.Insert(6, ".") + 热量单位;
                    string 瞬时流量22 = mbus22.Substring(58, 8);
                    string 瞬时流量单位22 = mbus22.Substring(66, 2);
                    switch (瞬时流量单位22)
                    {
                        case "32":
                            流量单位 = "L/h";
                            break;
                        case "35":
                            流量单位 = "m³/h";
                            break;
                    }
                    textBox30.Text = 瞬时流量22.Insert(4, ".") + 流量单位;
                    string 累计流量22 = mbus22.Substring(68, 8);
                    string 累计流量单位22 = mbus22.Substring(76, 2);
                    switch (累计流量单位22)
                    {
                        case "29":
                            流量单位 = "L";
                            break;
                        case "2C":
                            流量单位 = "m³";
                            break;
                    }
                    textBox29.Text = 累计流量22.Insert(6, ".") + 流量单位;

                    string 供水温度22 = mbus22.Substring(78, 6);
                    textBox28.Text = 供水温度22.Insert(4, ".") + "℃";
                    string 回水温度22 = mbus22.Substring(84, 6);
                    textBox27.Text = 回水温度22.Insert(4, ".") + "℃";
                    string 累计时间22 = mbus22.Substring(90, 6);
                    textBox26.Text = 累计时间22 + "h";
                    string 实时22 = mbus22.Substring(96, 14);
                    string a22 = 实时22.Insert(4, "年");
                    string b22 = a22.Insert(7, "月");
                    string c22 = b22.Insert(10, "日");
                    string d22 = c22.Insert(13, "时");
                    string 时间22 = d22.Insert(16, "分");
                    string 实时时间22 = 时间22.Insert(19, "秒");
                    textBox25.Text = 实时时间22;
                    break;
                #endregion
                #region 两个数组
                case 2:
                    JArray dat03 = JArray.Parse(jsonObj["data"].ToString());
                    JObject da03 = JObject.Parse(dat03[0].ToString());//dat[0]第一组数
                    textBox1.Text = da03["SER"].ToString();//完成
                    textBox2.Text = da03["time"].ToString();//完成
                                                           //textBox5.Text = da["MBusResp"].ToString();//完成
                    string mbus03 = da03["MBusResp"].ToString();//完成
                                                              //textBox5.Text = mbus;
                    string 地址03 = mbus03.Substring(4, 14);
                    textBox3.Text = 地址03;
                    string 日热量03 = mbus03.Substring(28, 8);
                    //textBox2.Text = 日热量.Insert(6,"."); //无单位         
                    string 日热量单位03 = mbus03.Substring(36, 2);
                    switch (日热量单位03)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox4.Text = 日热量03.Insert(6, ".") + 热量单位;//完成

                    string 累计热量03 = mbus03.Substring(38, 8);
                    string 累计热量单位03 = mbus03.Substring(46, 2);
                    switch (累计热量单位03)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox5.Text = 累计热量03.Insert(6, ".") + 热量单位;
                    string 瞬时热量03 = mbus03.Substring(48, 8);
                    string 瞬时热量单位03 = mbus03.Substring(56, 2);
                    switch (瞬时热量单位03)
                    {
                        case "12":
                            热量单位 = "GJ/h";
                            break;
                        case "14":
                            热量单位 = "W";
                            break;
                        case "17":
                            热量单位 = "kW";
                            break;
                        case "1A":
                            热量单位 = "MW";
                            break;
                    }
                    textBox6.Text = 瞬时热量03.Insert(6, ".") + 热量单位;
                    string 瞬时流量03 = mbus03.Substring(58, 8);
                    string 瞬时流量单位03 = mbus03.Substring(66, 2);
                    switch (瞬时流量单位03)
                    {
                        case "32":
                            流量单位 = "L/h";
                            break;
                        case "35":
                            流量单位 = "m³/h";
                            break;
                    }
                    textBox7.Text = 瞬时流量03.Insert(4, ".") + 流量单位;
                    string 累计流量03 = mbus03.Substring(68, 8);
                    string 累计流量单位03 = mbus03.Substring(76, 2);
                    switch (累计流量单位03)
                    {
                        case "29":
                            流量单位 = "L";
                            break;
                        case "2C":
                            流量单位 = "m³";
                            break;
                    }
                    textBox8.Text = 累计流量03.Insert(6, ".") + 流量单位;

                    string 供水温度03 = mbus03.Substring(78, 6);
                    textBox9.Text = 供水温度03.Insert(4, ".") + "℃";
                    string 回水温度03 = mbus03.Substring(84, 6);
                    textBox10.Text = 回水温度03.Insert(4, ".") + "℃";
                    string 累计时间03 = mbus03.Substring(90, 6);
                    textBox11.Text = 累计时间03 + "h";
                    string 实时03 = mbus03.Substring(96, 14);
                    string a03 = 实时03.Insert(4, "年");
                    string b03 = a03.Insert(7, "月");
                    string c03 = b03.Insert(10, "日");
                    string d03 = c03.Insert(13, "时");
                    string 时间03 = d03.Insert(16, "分");
                    string 实时时间03 = 时间03.Insert(19, "秒");
                    textBox12.Text = 实时时间03;
                    //第二组数据
                    JObject da13 = JObject.Parse(dat03[1].ToString());//dat[0]第一组数
                    textBox24.Text = da13["SER"].ToString();//完成
                    textBox23.Text = da13["time"].ToString();//完成
                    string mbus13 = da13["MBusResp"].ToString();//完成
                    string 地址13 = mbus13.Substring(4, 14);
                    textBox22.Text = 地址13;
                    string 日热量13 = mbus13.Substring(28, 8);
                    //textBox2.Text = 日热量.Insert(6,"."); //无单位         
                    string 日热量单位13 = mbus13.Substring(36, 2);
                    switch (日热量单位13)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox21.Text = 日热量13.Insert(6, ".") + 热量单位;//完成

                    string 累计热量13 = mbus13.Substring(38, 8);
                    string 累计热量单位13 = mbus13.Substring(46, 2);
                    switch (累计热量单位13)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox20.Text = 累计热量13.Insert(6, ".") + 热量单位;
                    string 瞬时热量13 = mbus13.Substring(48, 8);
                    string 瞬时热量单位13 = mbus13.Substring(56, 2);
                    switch (瞬时热量单位13)
                    {
                        case "12":
                            热量单位 = "GJ/h";
                            break;
                        case "14":
                            热量单位 = "W";
                            break;
                        case "17":
                            热量单位 = "kW";
                            break;
                        case "1A":
                            热量单位 = "MW";
                            break;
                    }
                    textBox19.Text = 瞬时热量13.Insert(6, ".") + 热量单位;
                    string 瞬时流量13 = mbus13.Substring(58, 8);
                    string 瞬时流量单位13 = mbus13.Substring(66, 2);
                    switch (瞬时流量单位13)
                    {
                        case "32":
                            流量单位 = "L/h";
                            break;
                        case "35":
                            流量单位 = "m³/h";
                            break;
                    }
                    textBox18.Text = 瞬时流量13.Insert(4, ".") + 流量单位;
                    string 累计流量13 = mbus13.Substring(68, 8);
                    string 累计流量单位13 = mbus13.Substring(76, 2);
                    switch (累计流量单位13)
                    {
                        case "29":
                            流量单位 = "L";
                            break;
                        case "2C":
                            流量单位 = "m³";
                            break;
                    }
                    textBox17.Text = 累计流量13.Insert(6, ".") + 流量单位;

                    string 供水温度13 = mbus13.Substring(78, 6);
                    textBox16.Text = 供水温度13.Insert(4, ".") + "℃";
                    string 回水温度13 = mbus13.Substring(84, 6);
                    textBox15.Text = 回水温度13.Insert(4, ".") + "℃";
                    string 累计时间13 = mbus13.Substring(90, 6);
                    textBox14.Text = 累计时间13 + "h";
                    string 实时13 = mbus13.Substring(96, 14);
                    string a13 = 实时13.Insert(4, "年");
                    string b13 = a13.Insert(7, "月");
                    string c13 = b13.Insert(10, "日");
                    string d13 = c13.Insert(13, "时");
                    string 时间13 = d13.Insert(16, "分");
                    string 实时时间13 = 时间13.Insert(19, "秒");
                    textBox13.Text = 实时时间13;
                    break;
#endregion
                #region 一个数组
                case 1:
                    JArray dat04 = JArray.Parse(jsonObj["data"].ToString());
                    JObject da04 = JObject.Parse(dat04[0].ToString());//dat[0]第一组数
                    textBox1.Text = da04["SER"].ToString();//完成
                    textBox2.Text = da04["time"].ToString();//完成
                                                           //textBox5.Text = da["MBusResp"].ToString();//完成
                    string mbus04 = da04["MBusResp"].ToString();//完成
                                                              //textBox5.Text = mbus;
                    string 地址04 = mbus04.Substring(4, 14);
                    textBox3.Text = 地址04;
                    string 日热量04 = mbus04.Substring(28, 8);
                    //textBox2.Text = 日热量.Insert(6,"."); //无单位         
                    string 日热量单位04 = mbus04.Substring(36, 2);
                    switch (日热量单位04)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox4.Text = 日热量04.Insert(6, ".") + 热量单位;//完成

                    string 累计热量04 = mbus04.Substring(38, 8);
                    string 累计热量单位04 = mbus04.Substring(46, 2);
                    switch (累计热量单位04)
                    {
                        case "02":
                            热量单位 = "Wh";
                            break;
                        case "05":
                            热量单位 = "kwh";
                            break;
                        case "08":
                            热量单位 = "MWh";
                            break;
                        case "0A":
                            热量单位 = "MWh*100";
                            break;
                        case "01":
                            热量单位 = "J";
                            break;
                        case "0B":
                            热量单位 = "kJ";
                            break;
                        case "0E":
                            热量单位 = "MJ";
                            break;
                        case "11":
                            热量单位 = "GJ";
                            break;
                        case "13":
                            热量单位 = "GJ*100";
                            break;
                    }
                    textBox5.Text = 累计热量04.Insert(6, ".") + 热量单位;
                    string 瞬时热量04 = mbus04.Substring(48, 8);
                    string 瞬时热量单位04 = mbus04.Substring(56, 2);
                    switch (瞬时热量单位04)
                    {
                        case "12":
                            热量单位 = "GJ/h";
                            break;
                        case "14":
                            热量单位 = "W";
                            break;
                        case "17":
                            热量单位 = "kW";
                            break;
                        case "1A":
                            热量单位 = "MW";
                            break;
                    }
                    textBox6.Text = 瞬时热量04.Insert(6, ".") + 热量单位;
                    string 瞬时流量04 = mbus04.Substring(58, 8);
                    string 瞬时流量单位04 = mbus04.Substring(66, 2);
                    switch (瞬时流量单位04)
                    {
                        case "32":
                            流量单位 = "L/h";
                            break;
                        case "35":
                            流量单位 = "m³/h";
                            break;
                    }
                    textBox7.Text = 瞬时流量04.Insert(4, ".") + 流量单位;
                    string 累计流量04 = mbus04.Substring(68, 8);
                    string 累计流量单位04 = mbus04.Substring(76, 2);
                    switch (累计流量单位04)
                    {
                        case "29":
                            流量单位 = "L";
                            break;
                        case "2C":
                            流量单位 = "m³";
                            break;
                    }
                    textBox8.Text = 累计流量04.Insert(6, ".") + 流量单位;

                    string 供水温度04 = mbus04.Substring(78, 6);
                    textBox9.Text = 供水温度04.Insert(4, ".") + "℃";
                    string 回水温度04 = mbus04.Substring(84, 6);
                    textBox10.Text = 回水温度04.Insert(4, ".") + "℃";
                    string 累计时间04 = mbus04.Substring(90, 6);
                    textBox11.Text = 累计时间04 + "h";
                    string 实时04 = mbus04.Substring(96, 14);
                    string a04 = 实时04.Insert(4, "年");
                    string b04 = a04.Insert(7, "月");
                    string c04 = b04.Insert(10, "日");
                    string d04 = c04.Insert(13, "时");
                    string 时间04 = d04.Insert(16, "分");
                    string 实时时间04 = 时间04.Insert(19, "秒");
                    textBox12.Text = 实时时间04;
                    break;
                    #endregion
            }
        }
        public class Datapoints
        {
            public string at { get; set; }
            public string value { get; set; }
        }

        public class Datastreams
        {
            public List<Datapoints> datapoints { get; set; }
            public string id { get; set; }
        }

        public class Data
        {
            public string count { get; set; }
            public List<Datastreams> datastreams { get; set; }
        }

        public class RootObject
        {
            public string errno { get; set; }
            public Data data { get; set; }
            public string error { get; set; }
        }

        private void label1_Click(object sender, EventArgs e)
        {

        }

        private void textBox7_TextChanged(object sender, EventArgs e)
        {

        }


    }
}
